package database.util;

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableModel;

import database.domain.Equipo;
import database.domain.Modificadores;

/**Tabla que carga los objetos de equipo.
 * @author Irene
 */

public class TablaEquipo extends JTable{
	private static final long serialVersionUID = -779506181741737992L;
	private static DefaultTableCellRenderer renNumerosDerecha= new DefaultTableCellRenderer();
	private static DefaultTableCellRenderer renCentrada= new DefaultTableCellRenderer();
	static{
		renNumerosDerecha.setHorizontalAlignment(JLabel.RIGHT);
		renCentrada.setHorizontalAlignment(JLabel.CENTER);
	}
	public void setModel(TableModel tmodel){
		if(tmodel instanceof ModeloTablaEquipo) super.setModel(tmodel);
		else throw new IncompatibleClassChangeError();
	}
	public ModeloTablaEquipo getModeloTablaEquipo(){
		return (ModeloTablaEquipo) getModel();
	}
	public TablaEquipo(ModeloTablaEquipo modelo){
		super(modelo);
		setRowHeight(20);
		this.setOpaque(false);
		//getColumn("Pic").setCellRenderer(renImagenCentrada);
		//getColumn("Pic").setPreferredWidth(5);
		String[] nombresCols= {"Pic", "Name", "Desc", "Cost","Stats"};//, "Defense", "Magic", "Resistence", "Speed", "Jump", "SP", "HP"};
		getColumn("Cost").setCellRenderer(renCentrada);
		getColumn("Name").setCellRenderer(renCentrada);
		for(int i=1; i<nombresCols.length; i++){
			getColumn(nombresCols[i]).setPreferredWidth(10);
		}
	}
	public static void main(String [] arhs){
		Equipo darknin= new Equipo(0, "A", "Black gear", null, "darkninjagear.png", 1700, new Modificadores(0, 0, 35, 0, 3, 2, 0, 0, 0));
		TablaEquipo tabla = new TablaEquipo(new ModeloTablaEquipo());
		((ModeloTablaEquipo)tabla.getModeloTablaEquipo()).insert(darknin);
		
		JFrame ventana= new JFrame();
		ventana.getContentPane().setLayout(new BorderLayout());
		
		JScrollPane scroll= new JScrollPane(tabla);
		ventana.add(scroll, BorderLayout.CENTER);
		ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		ventana.setVisible(true);
		ventana.setSize(600, 600);
	}
}

